-- @Author: 作者QQ201878826
-- @Date:   2022-04-30 19:50:41
-- @Last Modified by:   作者QQ381990860
-- @Last Modified time: 2022-09-21 20:22:42
--======================================================================--
-- @作者: QQ381990860
-- @创建时间:   2019-12-03 02:17:19
-- @Last Modified time: 2021-12-21 22:34:58
--======================================================================--
local 场景类_战备界面 = class(窗口逻辑)
local sd =0
local sd1 =0
local tp,zts,zts1
local floor = math.floor
local tonumber = tonumber
local tostring = tostring
local insert = table.insert
local 图像类 = require("gge图像类")
local 矩阵 = require("gge包围盒")(0,0,71,22)
local 矩阵1 = require("gge包围盒")(0,0,60,22)
local 矩阵2 = require("gge包围盒")(0,0,71,22)
local 矩阵3 = require("gge包围盒")(0,0,71,22)

function 场景类_战备界面:初始化(根)
	self.ID = 9981
	self.x = 280+(全局游戏宽度-800)/2
	self.y = 80
	self.xx = 0
	self.yy = 0
	self.注释 = "战备检查"
	self.可视 = false
	self.鼠标 = false
	self.焦点 = false
	self.可移动 = true
	local 按钮 = 根._按钮
	local 自适应 = 根._自适应
	local 资源 = 根.资源
	self.资源组 = {
		[1] = 自适应.创建(0,1,435,425,3,9),
		[2] = 按钮.创建(自适应.创建(18,4,16,16,4,3),0,0,4,true,true),
		[3] = 按钮.创建(自适应.创建(11,4,100,26,1,3),0,0,4,true,true,"一键附魔"),
		[4] = 自适应.创建(0,1,190,60,3,9),
		[5] = 资源:载入('UI.dll',"网易WDF动画",0x00000022),
		[6] = 按钮.创建(资源:载入( 'MAX.7z',"网易WDF动画","祈福"),0,0,4),
	}
	for n=2,3 do
	   self.资源组[n]:绑定窗口_(9981)
	end
    self.资源组[6]:绑定窗口_(9981)
    self.战备图 =   图像类(程序目录.."data/pic/zbt.png")
	self.战备图1 =   图像类(程序目录.."data/pic/zbt-1.png")
	self.窗口时间 = 0
	tp = 根
	zts = tp.字体表.普通字体__
	zts1 = tp.字体表.描边字体
	self.进程 = 1
	self.胜利 = 3
	self.点击 = false
	self.附魔数 = 0
	self.颜色 = -16466190
	self.偏移 = 0
	
    self.人物装备 = {}
	local 格子 = 根._物品格子

	for i=1,6 do
		self.人物装备[i] = 格子(0,0,i,"道具行囊_人物装备")
	end
	
	self.装备坐标 = {x={195,195,195,195,195,195},y={40,102,164,226,288,350}}
    self.圣兽丹动画 =根.资源:载入('JM.dll',"网易WDF动画",0xA4F1E391)
end



function 场景类_战备界面:打开(数据)
	if self.可视 then
		self.可视 = false
		self.进程 = 1
		self.胜利 = 3
		self.点击 = false
		for i=1,6 do
			self.人物装备[i]:置物品(nil)
		end

	else
		if  self.x > 全局游戏宽度 then
		   		self.x = 150+(全局游戏宽度-800)/2
		end
		
		self.数据=数据
		insert(tp.窗口_,self)
	    tp.运行时间 = tp.运行时间 + 1
	  	self.窗口时间 = tp.运行时间
	    self.可视 = true
		self.点击 = false
		self.附魔数 = tonumber(self.数据.附魔数据)
		
		local 资源 = tp.资源
        self.bb数据=self.数据.变身
		self.bb属性 = "无"
		self.bb技能 = "无"
		
		if self.bb数据.属性.属性 and self.bb数据.属性.属性~="" then
		
		self.bb属性 = self.bb数据.属性.属性.." + "..self.bb数据.属性.数值
		end
		if self.bb数据.技能  then
		self.bb技能 = self.bb数据.技能.名称
		end
		
        
          if self.bb数据.造型~=nil then
            local n =  ModelData[self.bb数据.造型]
            self.bb头像 = tp.资源:载入(n.头像资源,"网易WDF动画",n.小头像)
          end
		  
		  
		local 格子 = tp._物品格子 

		for i=1,6 do
			self.人物装备[i] = 格子(0,0,i,"道具行囊_人物装备")
			self.人物装备[i]:置物品(self.数据[i+20])
		end  
		  
 
	end
end

function 场景类_战备界面:刷新(数据)

  self.数据 = 数据 
  self.附魔数 = tonumber(self.数据.附魔数据)
   local 资源 = tp.资源
        self.bb数据=self.数据.变身
		self.bb属性 = "无"
		self.bb技能 = "无"
		
       if  self.bb数据  then

		if  self.bb数据.属性 and self.bb数据.属性.属性 and self.bb数据.属性.属性~="" then
		
		self.bb属性 = self.bb数据.属性.属性.." + "..self.bb数据.属性.数值
		end
		if  self.bb数据.技能  then
		self.bb技能 = self.bb数据.技能.名称
		end
		
        
          if self.bb数据.造型~=nil then
            local n =  ModelData[self.bb数据.造型]
            self.bb头像 = tp.资源:载入(n.头像资源,"网易WDF动画",n.小头像)
          end
	  end  
		  
		local 格子 = tp._物品格子 

		for i=1,6 do
			self.人物装备[i] = 格子(0,0,i,"道具行囊_人物装备")
			self.人物装备[i]:置物品(self.数据[i+20])
		end  
   
end

function 场景类_战备界面:显示(dt,x,y)
	self.焦点 = false
	self.资源组[2]:更新(x,y)
	self.资源组[6]:更新(x,y)
	
	self.资源组[1]:显示(self.x-45-35,self.y)
	self.资源组[2]:显示(self.x+335,self.y+3)
	self.资源组[6]:显示(self.x+328,self.y+382)
	self.战备图:显示(self.x+144,self.y+35)
	
	local yy = 0
	local zz = 0
	for n=1,6 do 
	
	if n== 2   then 
	  zz = 35
	 elseif n==3 then
	  zz = 40
	 elseif n==4 then
	  zz = 37
	 elseif n==5 then 
	  zz = 35
	  else 
	  zz = 34
	end
	self.战备图1:显示(self.x+148,self.y+222+yy*zz)
	tp.窗口标题背景_:显示(self.x+self.资源组[1].宽度/2-150,self.y)
	--zts1:显示(self.x+109,self.y+3,"捐  献")
	 yy = yy+1
	 

	end
	   
	tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+110,self.y+3,self.注释)
	
   tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+40,"气血")
   tp.字体表.普通字体:置颜色(0xFFFFFF00):显示(self.x+227,self.y+40,self.数据.当前气血.."/"..self.数据.最大气血)
   
   
   tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+65,"魔法")
   tp.字体表.普通字体:置颜色(0xFFFFFF00):显示(self.x+227,self.y+65,self.数据.当前魔法.."/"..self.数据.魔法上限)
   
   
   tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+90,"伤害")
   tp.字体表.普通字体:置颜色(0xFFFFFF00):显示(self.x+227,self.y+90,self.数据.伤害)
   
   
   tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+115,"防御")
   tp.字体表.普通字体:置颜色(0xFFFFFF00):显示(self.x+227,self.y+115,self.数据.防御)
   
   
   tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+140,"速度")
   tp.字体表.普通字体:置颜色(0xFFFFFF00):显示(self.x+227,self.y+140,self.数据.速度)
   
   
   tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+165,"灵力")
   tp.字体表.普通字体:置颜色(0xFFFFFF00):显示(self.x+227,self.y+165,self.数据.灵力)
   
   
   
   tp.字体表.普通字体:置颜色(0x8CD1D1D1):显示(self.x+165,self.y+192,"-----------------------")

   tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+220,"附魔")  
   tp.字体表.普通字体:置颜色(self.颜色):显示(self.x+227,self.y+220,self.附魔数.."/16 ")
   
   
   tp.字体表.普通字体:置颜色(self.颜色):显示(self.x+265+self.偏移,self.y+220+self.偏移," 一键附魔")
   tp.字体表.普通字体:置颜色(self.颜色):显示(self.x+265+self.偏移,self.y+220+self.偏移," ________")   
   
   tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+255,"变身")
   
   tp.宠物头像背景_:显示(self.x+227,self.y+245)
   
   if self.bb头像 then 
    self.bb头像:显示(self.x+230,self.y+249)
	if   self.bb头像:是否选中(x,y) then 
	   tp.提示:自定义(x-42,y+27,"#Y/变身造型: #G/"..(self.bb数据.造型 or "无").."\n#Y/附带技能: #G/"..self.bb技能.."\n#Y/属性影响: #G/"..self.bb属性)
	end
   end
   
   if self.资源组[6]:是否选中(x,y) then
   
   --tp.提示:自定义(x+42,y-30,"#Y/今日祈福: #G/"..self.数据.新祈福.."/50")
   --"押镖加成","活动怪加成","镇魔卫道加成","飞升副本加成","边境救援加成","灵狐乐园加成","挂机打宝加成","抓鬼加成","游泳加成","属性加成"
      local 加成效果 ="加成次数:#G/ "..self.数据.新祈福次数
   
        if self.数据.新祈福类型 =="押镖加成"  then
		  加成效果 ="加成效果:#G/ 前"..self.数据.新祈福次数.."次押镖银子加成20%,阵法爆率增加2%"
		elseif self.数据.新祈福类型 =="活动怪加成"  then
		加成效果 ="加成效果:#G/ 前"..self.数据.新祈福次数.."次活动怪物品爆率加成10%"
		
		elseif self.数据.新祈福类型 =="镇魔卫道加成"  then
		加成效果 ="加成效果:#G/ 前"..self.数据.新祈福次数.."次镇魔物品爆率加成5%,奖励增加5%"
		
		elseif self.数据.新祈福类型 =="飞升副本加成"  then
		加成效果 ="加成效果:#G/ 前"..self.数据.新祈福次数.."次副本物品爆率加成5%,奖励增加5%"
		
		elseif self.数据.新祈福类型 =="边境救援加成"  then
		加成效果 ="加成效果:#G/ 前"..self.数据.新祈福次数.."次边境物品爆率加成5%,奖励增加5%"
		
		elseif self.数据.新祈福类型 =="灵狐乐园加成"  then
		加成效果 ="加成效果:#G/ 前"..self.数据.新祈福次数.."次灵狐奖励加成30%"
		
		elseif self.数据.新祈福类型 =="挂机打宝加成"  then
		加成效果 ="加成效果:#G/ 前"..self.数据.新祈福次数.."次打宝抽奖极品爆率加成2%"
		
		elseif self.数据.新祈福类型 =="抓鬼加成"  then
		加成效果 ="加成效果:#G/ 前"..self.数据.新祈福次数.."次抓鬼奖励加成30%"
		
		elseif self.数据.新祈福类型 =="游泳加成"  then
		加成效果 ="加成效果:#G/ 前"..self.数据.新祈福次数.."次游泳奖励加成30%"
		
		end
   
   
   
           if self.数据[101] and #self.数据[101] >0 then
		     local 效果 = {}
		      for n=1,#self.数据[101] do
			    效果[n] = "#G/"..self.数据[101][n].类型.."+"..self.数据[101][n].数值.." #Y/有效期: #G/"..math.floor((self.数据[101][n].时间-os.time())/3600).."小时\n"
			  end
		      tp.提示:自定义(x+110,y-100,"#Y/今日祈福次数: #G/"..self.数据.新祈福.."/50\n#y/属性效果:\n"..(效果[1] or "")..(效果[2] or "")..(效果[3] or "")..(效果[4] or "")..(效果[5] or "")..(效果[6] or "").."\n#y/其他效果:#G/ "..self.数据.新祈福类型.."\n#y/"..加成效果)
		   else
              tp.提示:自定义(x+110,y-100,"#Y/今日祈福次数: #G/"..self.数据.新祈福.."/50\n#y/属性效果:#G/ 无\n#y/其他效果:#G/ "..self.数据.新祈福类型.."\n#y/"..加成效果)
		   end
   end
	
	tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+300,"精灵")  
    tp.字体表.普通字体:置颜色(self.颜色):显示(self.x+224,self.y+301,"查看精灵")
    tp.字体表.普通字体:置颜色(self.颜色):显示(self.x+224,self.y+301,"________") 
	self.圣兽丹动画:显示(self.x+285,self.y+294) 
	
	if self.圣兽丹动画:是否选中(x,y) then
	       if self.数据[100] and #self.数据[100] >0 then
		     local 效果 = {}
		      for n=1,#self.数据[100] do
			    效果[n] = "#G/"..self.数据[100][n].类型.."+"..self.数据[100][n].数值.." #Y/有效期: #G/"..math.floor((self.数据[100][n].时间-os.time())/3600).."小时\n"
			  end
		      tp.提示:自定义(x+110,y,"#y/祝福效果:\n"..(效果[1] or "")..(效果[2] or "")..(效果[3] or "")..(效果[4] or "")..(效果[5] or "")..(效果[6] or ""))
		   else
              tp.提示:自定义(x+110,y,"#y/祝福效果:#G/ 无")
		   end
		   
		   
		   if self.鼠标 and not tp.消息栏焦点 and 引擎.鼠标弹起(0) then
		   
		      客户端:发送数据(1,499, 5, "0")
		   end
	  end 
	
	tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+330,"宠物携带") 
	tp.字体表.普通字体:置颜色(self.颜色):显示(self.x+250,self.y+331,self.数据.宠物携带.数量.."/"..self.数据.宠物携带.上限)
    tp.字体表.普通字体:置颜色(self.颜色):显示(self.x+250,self.y+331,"___") 
	
	tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+360,"子女携带") 
	tp.字体表.普通字体:置颜色(self.颜色):显示(self.x+250,self.y+361,self.数据.子女携带.."/5")
    tp.字体表.普通字体:置颜色(self.颜色):显示(self.x+250,self.y+361,"___") 
	
	tp.字体表.普通字体:置颜色(0xFFFFFFFF):显示(self.x+172,self.y+390,"祈福") 
	if self.数据.新祈福类型 == "无祈福" then
	 tp.字体表.普通字体:置颜色(self.颜色):显示(self.x+220,self.y+391,"未拥有祈福效果")
	 else 
	 tp.字体表.普通字体:置颜色(self.颜色):显示(self.x+220,self.y+391,self.数据.新祈福类型)
	 
	 end
	 
	 
	 
	 
	 tp.字体表.普通字体:置颜色(0x8CD1D1D1):显示(self.x+125,self.y+20,"丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨\n丨")
	
	   for i=1,6 do
	   self.资源组[4]:显示(self.x+self.装备坐标.x[i]-230-35,self.y+self.装备坐标.y[i]-5)
	   --self.资源组[5]:显示(self.x+2+self.装备坐标.x[i]-230-35,self.y+1+self.装备坐标.y[i]-1)
	   self.资源组[5]:显示(self.x-68,self.y+41)
	   self.资源组[5]:显示(self.x-68,self.y+103)
	   self.资源组[5]:显示(self.x-68,self.y+165)
	   self.资源组[5]:显示(self.x-68,self.y+227)
	   self.资源组[5]:显示(self.x-68,self.y+289)
	   self.资源组[5]:显示(self.x-68,self.y+351)
		   if self.人物装备[i].物品 ~= nil and  self.人物装备[i].物品.特技 ~= nil then 
		     tp.字体表.普通字体__:置颜色(0xFFdd66f1):显示(self.x+62+self.装备坐标.x[i]-230-35,self.y+self.装备坐标.y[i]+29,self.人物装备[i].物品.特技)
		   else
		     tp.字体表.普通字体__:置颜色(0xFF7d7d7d):显示(self.x+62+self.装备坐标.x[i]-230-35,self.y+self.装备坐标.y[i]+29,"特技: 空")
		   end
		   if self.人物装备[i].物品 ~= nil and  self.人物装备[i].物品.特效 ~= nil and #self.人物装备[i].物品.特效 >0 then 
		         tp.字体表.普通字体__:置颜色(0xFFdd66f1):显示(self.x+62+self.装备坐标.x[i]-230-35,self.y+self.装备坐标.y[i]+7,self.人物装备[i].物品.特效[1].." "..(self.人物装备[i].物品.特效[2] or ""))
		   else
		     tp.字体表.普通字体__:置颜色(0xFF7d7d7d):显示(self.x+62+self.装备坐标.x[i]-230-35,self.y+self.装备坐标.y[i]+7,"特效: 空")
		   end
		end
	
	    for i=1,6 do
			self.人物装备[i]:置坐标(self.x+self.装备坐标.x[i]+5-230-35,self.y+self.装备坐标.y[i])
			
			self.人物装备[i]:显示(dt,x,y,self.鼠标)

			if self.人物装备[i].物品 ~= nil and self.人物装备[i].焦点 then
				tp.提示:道具行囊(x,y,self.人物装备[i].物品)
			end
			if self.人物装备[i].焦点 then
				self.焦点 = true
			end
		end	

	
	  矩阵:置坐标(self.x+265,self.y+220)
      矩阵1:置坐标(self.x+224,self.y+301)
	  矩阵2:置坐标(self.x+250,self.y+331)
	  矩阵3:置坐标(self.x+250,self.y+361)
	  
if self.鼠标 and not tp.消息栏焦点 then
	  if 矩阵3:检查点(x,y)   then
	  tp.鼠标.置鼠标("事件")
	  if 引擎.鼠标弹起(0) then 
		      if tp.窗口.道具行囊.可视 then
					tp.窗口.道具行囊:打开()
				else
					客户端:发送数据(1, 1, 13, "9", 1)
				end
	  end
	 end
	  if 矩阵2:检查点(x,y)   then
	  tp.鼠标.置鼠标("事件")
	  if 引擎.鼠标弹起(0) then 
	    客户端:发送数据(1,5,23,"66")
		--self:打开()
	  end
	 end
	  
	 if 矩阵1:检查点(x,y)   then
	  tp.鼠标.置鼠标("事件")
	  if 引擎.鼠标弹起(0) then 
	    客户端:发送数据(1,388, 5, "0")
		--self:打开()
	  end
	 end
    if 矩阵:检查点(x,y)   then
	  
	  tp.鼠标.置鼠标("事件")
	  if 引擎.鼠标弹起(0)  then 
	    客户端:发送数据(2, 26300, 13, "9", 1)
		--self:打开()
	  end
	 end
end
	
	if self.资源组[2]:事件判断() then
		self:打开()
	elseif self.资源组[6]:事件判断() then
		--客户端:发送数据(14,14,5,"银子")
		--tp.提示:写入("#Y/新祈福系统，近期开放")
		客户端:发送数据(2, 26800, 13, "9", 1)
		 
    end

end
function 场景类_战备界面:检查点(x,y)
   if self.可视 and self.资源组[1]:是否选中(x,y)  then
        return true
    else
        return false
    end
end

return 场景类_战备界面